//package pers.karl.demo.spring.web.controller;
//
//import java.io.File;
//import java.io.IOException;
//import java.util.List;
//import java.util.Map;
//
//import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.http.HttpStatus;
//import org.springframework.http.ResponseEntity;
//import org.springframework.stereotype.Controller;
//import org.springframework.ui.Model;
//import org.springframework.web.bind.annotation.PathVariable;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestMethod;
//import org.springframework.web.bind.annotation.RequestParam;
//import org.springframework.web.bind.annotation.ResponseBody;
//import org.springframework.web.multipart.MultipartFile;
//
//@Controller
//@RequestMapping("/test")
//public class HelloController {
//
//	@RequestMapping("/hello")
//	public String helloMvc() {
//		return "hello";
//	}
//
//	@RequestMapping("/view")
//	public String view(Model model){
//		model.addAttribute("list",testService.query());
//
//		return "list";
//	}
//
//	// restful风格
//	//test/rest/name/age
//	@RequestMapping("/rest/{name}/{age}")
//	public String rest(@PathVariable("name") String name, @PathVariable("age") int age, Model model){
//		model.addAttribute("list",testService.query());
//
//		return "list";
//	}
//
//	@RequestMapping("/json1")
//	@ResponseBody
//	public ResponseEntity<List<Student>> queryJson(){
//		List<Student> list = testService.query();
//		return new ResponseEntity<List<Student>>(list,HttpStatus.OK);
//	}
//
//	// json 交互2
//	@RequestMapping("/json2")
//	@ResponseBody
//	public List<Student> query(){
//		return testService.query();
//	}
//
//
//
//	@RequestMapping("/query")
//	@ResponseBody
//	public Map<String, Object> save(Student student){
//
//		//使用commons-lang3中的方法，打印对象信息,解决无toString方法
//		System.out.println(ReflectionToStringBuilder.toString(student));
//
//		return null;
//	}
//
//	@RequestMapping("/uploadPage")
//	public String showUploadPage(Model model){
//		model.addAttribute("list",testService.query());
//
//		return "fileUpload";
//	}
//
//	@RequestMapping(value="/upload",method=RequestMethod.POST)
//	public String upload(@RequestParam("file") MultipartFile file) throws IOException{
//		//需要检测非空？？
//		System.out.println("文件大小为：" + file.getSize());
//
//		if(file.getSize() > 1024 *4){
//			throw new RuntimeException("文件过大");
//	    }
//
//		String originalFileName = file.getOriginalFilename();
//        System.out.println(originalFileName);
//
//
//        File destFile = new File("d:\\temp/" + originalFileName);//加了/变成了磁盘顶级目录,否则为项目内,目录不会自动创建
//        System.out.println(destFile.getAbsolutePath());
//        file.transferTo(destFile); //用于保存o为永久文件,临时文件会在本方法结束后被删除
//
//        //System.out.println(file.getName());
//
//        return "index";
//	}
//
//}
